Colin Walters [Mon, 16 Jan 2012 14:39:13 +0000 (09:39 -0500)]
Revert "ostbuild: Check for the Makefile in the correct directory"
I'm not sure how this made anything work...probably I was screwing
something else up.
This reverts commit
aeeed8da13086baefcff4b2e5c6a62727226ad4d.
Colin Walters [Mon, 16 Jan 2012 14:30:13 +0000 (09:30 -0500)]
gnomeos: Pull in a few X video drivers
Colin Walters [Mon, 16 Jan 2012 14:27:46 +0000 (09:27 -0500)]
ostbuild: Save build logs to a file, monitor output for warnings
This is bringing us back closer to metabuild.
Colin Walters [Mon, 16 Jan 2012 14:26:06 +0000 (09:26 -0500)]
gnomeos: Add uid/group for dbus/gdm
Colin Walters [Mon, 16 Jan 2012 02:45:12 +0000 (21:45 -0500)]
ostbuild: Clean up artifact splitting, put non-symlink .so in runtime
We were breaking nss which just installs libnss3.so as the real
shared library.
Colin Walters [Sun, 15 Jan 2012 22:06:18 +0000 (17:06 -0500)]
gnomeos: Building gdm
Colin Walters [Sun, 15 Jan 2012 22:05:38 +0000 (17:05 -0500)]
gnomeos: Add some build deps for pulseaudio to Yocto layer
Colin Walters [Sun, 15 Jan 2012 22:04:55 +0000 (17:04 -0500)]
ostbuild: Run triggers after constructing build root
Colin Walters [Sun, 15 Jan 2012 17:25:52 +0000 (12:25 -0500)]
core: Ensure we delete duplicate files in a transaction
If multiple files have the same hash, we need to ensure we're not
overwriting other tempfiles in the same transaction. Instead
just delete them, since we know they're in the repo.
Colin Walters [Sun, 15 Jan 2012 15:47:05 +0000 (10:47 -0500)]
core: Create a directory for each transaction
This helps ensure that we can more easily identify stale tempfiles
left over if we crash in the middle of a transaction.
Colin Walters [Sat, 14 Jan 2012 21:57:26 +0000 (16:57 -0500)]
gnomeos: Building X server, ConsoleKit, udisks, upower
Colin Walters [Sat, 14 Jan 2012 21:57:05 +0000 (16:57 -0500)]
gnomeos: Pull in PAM and gettext-dev into Yocto layer
Colin Walters [Sat, 14 Jan 2012 21:56:31 +0000 (16:56 -0500)]
ostbuild: Make --fetch a separate option
Colin Walters [Sat, 14 Jan 2012 21:54:00 +0000 (16:54 -0500)]
ostbuild: Check for the Makefile in the correct directory
Colin Walters [Fri, 13 Jan 2012 21:46:22 +0000 (16:46 -0500)]
gnomeos: Build ostree inside self-hosting system too
Colin Walters [Fri, 13 Jan 2012 21:30:39 +0000 (16:30 -0500)]
build: Add --disable-documentation flag
We may have xsltproc, but no DTDs.
Colin Walters [Fri, 13 Jan 2012 21:26:44 +0000 (16:26 -0500)]
gnomeos: Pull in gzip
It doesn't understand --best, and some builds assume gzip.
Colin Walters [Fri, 13 Jan 2012 20:08:27 +0000 (15:08 -0500)]
core: Move triggers into separate binary: ostree-run-triggers
I'm trying to keep ostree as being closer to just being the versioning
filesystem, so let's split out the triggers into a different binary
(although still namespaced ostree-).
Colin Walters [Fri, 13 Jan 2012 11:50:06 +0000 (06:50 -0500)]
gnomeos: Add upstream-status for texinfo
Colin Walters [Fri, 13 Jan 2012 04:24:56 +0000 (23:24 -0500)]
gnomeos: Pull nss from github mirror
Colin Walters [Fri, 13 Jan 2012 04:22:39 +0000 (23:22 -0500)]
ostbuild: Make explicit resolve (and fetch steps)
Build should only work on already-downloaded sources.
Colin Walters [Thu, 12 Jan 2012 15:55:28 +0000 (10:55 -0500)]
gnomeos: Pull in ISC DHCP from Debian git, make NetworkManager start
Colin Walters [Thu, 12 Jan 2012 15:48:11 +0000 (10:48 -0500)]
ostbuild: Lots of stuff
* Only create one build commit which contains multiple artifact trees,
rather than one per artifact. This is atomic. We can use the new
compose syntax like foo:/devel to slice out the /devel tree.
* Create the minimal buildroot for each component by composing the
previous components in the build order, instead of continually
updating one big tree.
* Ensure the artifact builder gets empty directories in /etc
Colin Walters [Thu, 12 Jan 2012 15:46:42 +0000 (10:46 -0500)]
gnomeos: Install libuuid and libblkid
So NetworkManager can use them.
Colin Walters [Thu, 12 Jan 2012 03:54:35 +0000 (22:54 -0500)]
gnomeos-run: Put current symlink in correct place
Colin Walters [Wed, 11 Jan 2012 19:36:04 +0000 (14:36 -0500)]
gnomeos: initscripts: Add NetworkManager and dbus, kill stupid arm stuff
Colin Walters [Wed, 11 Jan 2012 19:33:48 +0000 (14:33 -0500)]
ostbuild: Optionally log start of commands we want output from too
compose is slow, but we also want output.
Colin Walters [Wed, 11 Jan 2012 19:33:13 +0000 (14:33 -0500)]
core: Fix compose tests
Colin Walters [Wed, 11 Jan 2012 19:32:37 +0000 (14:32 -0500)]
ostbuild: Import odict from gobject-introspection
Colin Walters [Wed, 11 Jan 2012 18:42:59 +0000 (13:42 -0500)]
core: While walking mtrees during commit, ensure the referenced path is resolved
This gives us a clean error instead of an assertion.
Colin Walters [Wed, 11 Jan 2012 18:42:37 +0000 (13:42 -0500)]
core: Error out on an empty compose
Colin Walters [Tue, 10 Jan 2012 23:55:00 +0000 (18:55 -0500)]
core: Add from-file argument to compose
We don't want to have to pass a million arguments.
Colin Walters [Tue, 10 Jan 2012 18:20:56 +0000 (13:20 -0500)]
gnomeos: Pull in ppp and iptables, enough to get NetworkManager to build
Colin Walters [Tue, 10 Jan 2012 00:57:29 +0000 (19:57 -0500)]
gnomeos: Pull in NSS and SQLite as tarball-from-git imports
Colin Walters [Tue, 10 Jan 2012 00:56:59 +0000 (19:56 -0500)]
gnomeos: Pull in libuuid and libblkid from util-linux
Colin Walters [Tue, 10 Jan 2012 00:56:03 +0000 (19:56 -0500)]
compile-one: Fix build of modules that don't support srcdir != builddir
We need to run configure and make/make install in the _build
directory.
Colin Walters [Mon, 9 Jan 2012 16:10:10 +0000 (11:10 -0500)]
ostbuild: Make --debug-shell not exit immediately
We need to keep stdin open.
Colin Walters [Sun, 8 Jan 2012 22:33:01 +0000 (17:33 -0500)]
gnomeos: Work on updating udev
Colin Walters [Sun, 8 Jan 2012 19:21:02 +0000 (14:21 -0500)]
gnomeos: Getting up to NetworkManager now
Colin Walters [Sun, 8 Jan 2012 19:20:52 +0000 (14:20 -0500)]
ostbuild: Allow specifying no components to mean "all"
Colin Walters [Sun, 8 Jan 2012 19:20:26 +0000 (14:20 -0500)]
gnomeos: Add perl-XML-Parser to devel image
Needed by intltool
Colin Walters [Sun, 8 Jan 2012 19:20:07 +0000 (14:20 -0500)]
core: Make diff accept one argument too to mean "foo^ foo"
Colin Walters [Sat, 7 Jan 2012 16:47:51 +0000 (11:47 -0500)]
ostbuild: Allow specifying components to build on the command line
Colin Walters [Sat, 7 Jan 2012 16:47:26 +0000 (11:47 -0500)]
gnomeos: Move gnome-common to devel component
Don't need it in runtime.
Colin Walters [Sat, 7 Jan 2012 16:26:34 +0000 (11:26 -0500)]
gnomeos: Fix gnomeos-run.sh to use new naming scheme
Colin Walters [Sat, 7 Jan 2012 16:26:12 +0000 (11:26 -0500)]
core: Make local-clone handle nested refs/heads directories
Colin Walters [Sat, 7 Jan 2012 16:11:51 +0000 (11:11 -0500)]
core: Ensure we abort transaction if we fail in the middle
Otherwise we could leave a lot of temp files lying around.
Colin Walters [Sat, 7 Jan 2012 16:11:17 +0000 (11:11 -0500)]
gnomeos: Delete now upstream pixman patch
Colin Walters [Sat, 7 Jan 2012 01:11:50 +0000 (20:11 -0500)]
gnomeos: --disable-silent-rules globally
Colin Walters [Sat, 7 Jan 2012 01:10:07 +0000 (20:10 -0500)]
gnomeos: --disable-silent-rules for cairo
Colin Walters [Sat, 7 Jan 2012 01:03:04 +0000 (20:03 -0500)]
gnomeos: Pull in more of X, we're on cairo now
Colin Walters [Sat, 7 Jan 2012 01:02:46 +0000 (20:02 -0500)]
ostbuild: Switch to JSON metadata, various other fixes
Colin Walters [Fri, 6 Jan 2012 23:02:47 +0000 (18:02 -0500)]
gnomeos: Switch to GNU awk
Colin Walters [Fri, 6 Jan 2012 19:07:38 +0000 (14:07 -0500)]
gnomeos: add libXau
Colin Walters [Fri, 6 Jan 2012 19:07:20 +0000 (14:07 -0500)]
ostbuild: Don't fail if trying to rename() across a bind mount
Colin Walters [Fri, 6 Jan 2012 19:06:28 +0000 (14:06 -0500)]
ostbuild: Make use of --recompose
Colin Walters [Fri, 6 Jan 2012 19:05:51 +0000 (14:05 -0500)]
gnomeos: Initial commit should be a compose
This is just cleaner - we know where the ref came from, rather
than making it a copy, and also we can use it with the new
--recompose bits to keep adding to it.
Colin Walters [Fri, 6 Jan 2012 19:04:39 +0000 (14:04 -0500)]
core: Make --recompose skip passed arguments if they were already composed
This allows us to do "--recompose -b foo bar baz" and add bar and baz
iff they weren't already there.
Colin Walters [Fri, 6 Jan 2012 16:41:27 +0000 (11:41 -0500)]
ostbuild: Use split out linux-user-chroot binary
This way other meta-build projects could use it; mainly mock/pbuilder.
Also I don't have to keep running chown root:root; chmod u+s in a
separate root terminal after every install.
Colin Walters [Fri, 6 Jan 2012 00:10:09 +0000 (19:10 -0500)]
gnomeos: Move everything into JSON, start plowing through X.org
Also:
* Stop generating tarballs for artifacts, use plain directories
* Commit artifacts as uid/gid 0, with no xattrs
Other misc stuff
Colin Walters [Fri, 6 Jan 2012 00:07:47 +0000 (19:07 -0500)]
gnomeos: Switch to GNU tar
Colin Walters [Thu, 5 Jan 2012 23:56:21 +0000 (18:56 -0500)]
core: Add --no-xattrs option for commit
Will be used by ostbuild.
Colin Walters [Thu, 5 Jan 2012 23:27:21 +0000 (18:27 -0500)]
core: Error out cleanly if user attempts to commit an empty tree
Colin Walters [Wed, 4 Jan 2012 00:09:12 +0000 (19:09 -0500)]
gnomeos: We can now build gobject-introspection
Colin Walters [Wed, 4 Jan 2012 00:07:02 +0000 (19:07 -0500)]
gnomeos: Add python-dev to devel image, drop pseudo
We need python-dev for gobject-introspection at least, and we don't
need pseudo at this time.
Colin Walters [Wed, 28 Dec 2011 16:31:50 +0000 (11:31 -0500)]
gnomeos: Add python-misc too so we get argparse
For some reason in the current yocto argparse is in python-misc.
Colin Walters [Tue, 27 Dec 2011 23:08:46 +0000 (18:08 -0500)]
gnomeos: Include Python files in main ostree package
Colin Walters [Tue, 27 Dec 2011 15:36:36 +0000 (10:36 -0500)]
.gitignore: Also ignore _build
This is automake's default build directory.
Colin Walters [Tue, 27 Dec 2011 15:32:28 +0000 (10:32 -0500)]
core: Make compose skip commit if tree is identical
This was a new option for commit, but we always want to do it
for a compose.
Colin Walters [Tue, 27 Dec 2011 15:31:23 +0000 (10:31 -0500)]
tests: Fix metadata test, we removed the spurious =
Colin Walters [Tue, 27 Dec 2011 03:09:14 +0000 (22:09 -0500)]
core: Add --print-metadata-key option for show
Useful for tools to extract simple metadata.
Colin Walters [Fri, 23 Dec 2011 23:46:19 +0000 (18:46 -0500)]
Add an initial man page - ostree(1)
Heavily cribbed from systemd - thanks Lennart!
Colin Walters [Fri, 23 Dec 2011 17:15:57 +0000 (12:15 -0500)]
ostbuild: Port chroot-compile-one to ostbuild executor
Colin Walters [Fri, 23 Dec 2011 15:57:54 +0000 (10:57 -0500)]
ostbuild: Port commit-artifacts to ostbuild executor
Colin Walters [Fri, 23 Dec 2011 15:48:57 +0000 (10:48 -0500)]
ostbuild: Move autodiscover-meta to ostbuild executor
Colin Walters [Fri, 23 Dec 2011 15:40:27 +0000 (10:40 -0500)]
ostbuild: Make new 'ostbuild' main entry point, and compile-one a subcommand
The collection of Python scripts here have gotten to the point where
we need to share code. Start refactoring things so that we have one
main command which imports subcommands as libraries.
Colin Walters [Fri, 23 Dec 2011 12:46:08 +0000 (07:46 -0500)]
ostbuild: Propagate buildroot version, finish add-artifacts
We need to track what buildroot each artifact was created in.
Colin Walters [Fri, 23 Dec 2011 12:45:13 +0000 (07:45 -0500)]
gnomeos: Add --skip-if-unchanged for yocto commit, also show a diff after building
We don't want to make new commits if nothing changed.
Colin Walters [Fri, 23 Dec 2011 12:14:48 +0000 (07:14 -0500)]
core: Add --add-metadata-string option for commit
A convenience function for the common case of slapping a string into
the metadata.
Colin Walters [Fri, 23 Dec 2011 12:12:03 +0000 (07:12 -0500)]
core: Fix libarchive test count
Colin Walters [Fri, 23 Dec 2011 11:49:04 +0000 (06:49 -0500)]
core: Add --tar-autocreate-parents option for commit
The tar files we're making of artifacts don't include parent
directories. Now we could change the builder to make them, but we can
also just autocreate them on import. Mode 0755 with no xattrs seems
OK here.
Colin Walters [Fri, 23 Dec 2011 00:52:30 +0000 (19:52 -0500)]
core: Fix build with libarchive disabled
Colin Walters [Thu, 22 Dec 2011 23:47:30 +0000 (18:47 -0500)]
core: Add --skip-if-unchanged option for commit
There's not much point for OS builds to have "empty" commits.
Colin Walters [Thu, 22 Dec 2011 22:00:58 +0000 (17:00 -0500)]
core: Add some more sanity checks to pull when parsing metadata
Colin Walters [Thu, 22 Dec 2011 21:50:01 +0000 (16:50 -0500)]
core: Preemptively error out on paths longer than PATH_MAX
Just noticed this while thinking like an attacker.
Colin Walters [Thu, 22 Dec 2011 20:59:47 +0000 (15:59 -0500)]
core: Allow / in ref names like git does
Using / is nice basically.
Colin Walters [Thu, 22 Dec 2011 18:19:30 +0000 (13:19 -0500)]
gnomeos: Update yocto commit script for new commit commandline syntax
Colin Walters [Thu, 22 Dec 2011 16:23:16 +0000 (11:23 -0500)]
core: Use global random object
We were pointlessly creating a new rand (and thus opening /dev/random)
on every temp file creation, but still using the global rand.
Colin Walters [Thu, 22 Dec 2011 16:07:55 +0000 (11:07 -0500)]
core: Drop unix::is-mountpoint from fast queryinfo flags
If this is present, we call access() and stat() on the parent
directory.
Colin Walters [Thu, 22 Dec 2011 16:04:08 +0000 (11:04 -0500)]
core: Use GFile for repo constructor API, and a bit more internally
Also, ensure that the repo directory GFile is absolute - this avoids
a getcwd() syscall every time we construct a GFile object.
Colin Walters [Thu, 22 Dec 2011 15:29:16 +0000 (10:29 -0500)]
core: Add --recompose option for compose
This will allow us to easily regenerate a compose without passing the
full list of components each time.
Colin Walters [Thu, 22 Dec 2011 02:42:13 +0000 (21:42 -0500)]
core: Change compose to operate purely in-memory
This is *significantly* faster than checking out each branch into the
real filesystem, then importing it again.
Colin Walters [Thu, 22 Dec 2011 01:10:10 +0000 (20:10 -0500)]
core: Allow specifying a previous commit tree as a basis for a new commit
It's pretty trivial to map a previously existing commit tree into a
mutable tree too. While we're here change the command line arguments
for commit so that we can now properly overlay any combination of
directory, commit, or tarfile.
Colin Walters [Wed, 21 Dec 2011 23:58:44 +0000 (18:58 -0500)]
core: Expose more details of commit via API
Rather than offering high level "commit directory", instead perform
operations on a mtree. Commits are treated more like regular objects.
Change the commit builtin to drive this all at a lower level.
Colin Walters [Wed, 21 Dec 2011 23:58:27 +0000 (18:58 -0500)]
core: Add omitted mutable tree files
Colin Walters [Wed, 21 Dec 2011 22:13:04 +0000 (17:13 -0500)]
core: Rename "store" public APIs to "stage" since that's what they do
Colin Walters [Wed, 21 Dec 2011 18:41:38 +0000 (13:41 -0500)]
core: Make OstreeRepoFile "public"
* "ls" used it
* It's not like our internal API is 100% stable anyways
* The _ is ugly
Colin Walters [Wed, 21 Dec 2011 18:34:10 +0000 (13:34 -0500)]
core: Add new "mutable tree" class, use it for tar file import
The tar import code forced the resuscitation of a hackish "FileTree"
data type for representing an in-memory tree. Split this out
into an OstreeMutableTree class for future use by any other in-memory
tree construction.
Colin Walters [Wed, 21 Dec 2011 16:01:41 +0000 (11:01 -0500)]
core: Remove dead code from OstreeRepoFile
Originally I thought it would make sense for OstreeRepoFile to be
mutable, and it probably does, but we should do it in a different way.
Colin Walters [Wed, 21 Dec 2011 15:52:57 +0000 (10:52 -0500)]
ostbuild: Separate metadata discovery, kill wrapper scripts
Add a simple KEY=VALUE metadata file format, and rather than
assuming 'basename' at a low level, allow passing e.g. NAME=gtk3
to override "gtk+".
The wrapper scripts are annoying...for now let's just remove them.